/**
 * Created by zhoua on 2016/12/19.
 */

!function () {
    var getUrlSearch = function (name) {
        var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
        var r = window.location.search.substr(1).match(reg);
        if (r != null) {
            return decodeURIComponent(r[2]);
        } else {
            return undefined;
        }
    };

    var VM = new Vue({
        el: "#list_vm",
        data: {
            //主体信息
            subject: {//主体信息
                toggle: 1,    // 显示项 1.显示正在加载 2.显示数据 3显示暂无数据
                info: [],
                totalRow: 1
            },
            //股东信息
            shareholder: {//股东信息
                toggle: 1,    // 显示项 1.显示正在加载 2.显示数据 3显示暂无数据
                info: [],
                totalRow: 1
            },
            //组织架构
            organization: {
                toggle: 1,    // 显示项 1.显示正在加载 2.显示数据 3显示暂无数据
                info: [],
                totalRow: 1
            },
            //清算组
            liquidation: {//清算组
                toggle: 1,    // 显示项 1.显示正在加载 2.显示数据 3显示暂无数据
                info: [],
                totalRow: 1
            },
            //许可信息
            license: {
                toggle: 1,    // 显示项 1.显示正在加载 2.显示数据 3显示暂无数据
                info: [],
                totalRow: 1
            },
            //荣誉信息
            honor: {
                toggle: 1,    // 显示项 1.显示正在加载 2.显示数据 3显示暂无数据
                info: [],
                totalRow: 1
            },
            //审批信息
            approval: {
                toggle: 1,    // 显示项 1.显示正在加载 2.显示数据 3显示暂无数据
                info: [],
                totalRow: 1
            },
            //处罚结果信息
            penalty: {
                toggle: 1,    // 显示项 1.显示正在加载 2.显示数据 3显示暂无数据
                info: [],
                totalRow: 1
            },
            //监督检查
            check: {
                toggle: 1,    // 显示项 1.显示正在加载 2.显示数据 3显示暂无数据
                info: [],
                totalRow: 1
            },
            //检验检测
            examination: {
                toggle: 1,    // 显示项 1.显示正在加载 2.显示数据 3显示暂无数据
                info: [],
                totalRow: 1
            },
            //司法协助
            judicial: {
                toggle: 1,    // 显示项 1.显示正在加载 2.显示数据 3显示暂无数据
                info: [],
                totalRow: 1
            },
            //企业年报
            annual: {
                toggle: 1,    // 显示项 1.显示正在加载 2.显示数据 3显示暂无数据
                info: [],
                totalRow: 1
            },
            //异常名录
            exceptionDir: {
                toggle: 1,    // 显示项 1.显示正在加载 2.显示数据 3显示暂无数据
                info: [],
                totalRow: 1
            }
        }
    });

    /**
     *
     * @param angu //{
     *               url:url,  请求路径
     *               type:type,
     *               dataType:dataType,
     *               data:data,
     *               vmdataType:vmdataType
     *               }
     */
    function aAjax(angu) {
        $.ajax({
            url: angu.url,
            type: angu.type,
            dataType: angu.dataType,
            data: angu.data,
            error: function () {
                angu.vmdataType.toggle = 3;
            }
        }).done(function (data) {
            if (data.status == '200') {
                if (data.data.dataList.length > 0) {
                    angu.vmdataType.toggle = 2;
                    angu.vmdataType.info = data.data.dataList;
                    angu.vmdataType.totalRow = data.data.pageObj.totalRow;
                }else{
                    angu.vmdataType.toggle = 3;
                }
            }else{
                angu.vmdataType.toggle = 3;
            }
            if( angu.url == '/api/gz/lg/exceptionDir/query.v' ){
                console.dir( '========================测试===========' );
                console.log( data  )
            }
        })
    }
    function aAja(angu) {
        $.ajax({
            url: angu.url,
            type: angu.type,
            dataType: angu.dataType,
            data: angu.data,
            error: function () {
                angu.vmdataType.toggle = 3;
            }
        }).done(function (data) {
            angu.vmdataType.toggle = 2;
            angu.vmdataType.info = data.data.dataList[0];
            angu.vmdataType.totalRow = data.data.pageObj.totalRow;
        })
    }


    //主体信息
    aAja({
        url: "/api/gz/lg/businessList.v",
        type: 'POST',
        dataType: "json",
        vmdataType: VM.subject,
        data: {
            regNum          : getUrlSearch('regNum') == undefined ? '' : getUrlSearch('regNum')
        }

    });
    // 股东信息
    aAjax({
        url: "/api/gz/lg/shareholderList.v",
        type: 'POST',
        dataType: "json",
        data: {
            regNum          : getUrlSearch('regNum') == undefined ? '' : getUrlSearch('regNum')
        },
        vmdataType: VM.shareholder
    });
     //组织架构
    aAjax({
        url: "/api/gz/lg/ganizationList.v",
        type: 'POST',
        dataType: "json",
        data: {
            regNum: getUrlSearch('regNum') == undefined ? '' : getUrlSearch('regNum')
        },
        vmdataType: VM.organization
    });
    //  //清算组
    aAjax({
        url: "/api/gz/lg/liquidationList.v",
        type: 'POST',
        dataType: "json",
        data: {
            regNum : getUrlSearch('regNum') == undefined ? '' : getUrlSearch('regNum')
        },
        vmdataType: VM.liquidation
    });
    // 许可信息
    aAjax({
        url: "/api/gz/lg/licenseList.v",
        type: 'POST',
        dataType: "json",
        data: {
            regNum          : getUrlSearch('regNum') == undefined ? '' : getUrlSearch('regNum')
        },
        vmdataType: VM.license
    });
     //荣誉信息
    aAjax({
        url: "/api/gz/lg/honor/honorList/query.v",
        type: 'POST',
        dataType: "json",
        data: {
            type:"oths",
            regNum          : getUrlSearch('regNum') == undefined ? '' : getUrlSearch('regNum'),
            custName          : getUrlSearch('custName') == undefined ? '' : getUrlSearch('custName')

        },
        vmdataType: VM.honor
    });
    // //审批信息
    //     aAjax({
    //         url: url,
    //         type: 'POST',
    //         dataType: "json",
    //         data: {
    //             regNum: "" || ""
    //         },
    //         vmdataType: VM.approval
    //     });
    //处罚结果信息
    aAjax({
        url: "/api/gz/lg/punish/query.v",
        type: 'POST',
        dataType: "json",
        data: {
            type:"oths",
            regNum          : getUrlSearch('regNum') == undefined ? '' : getUrlSearch('regNum')
        },
        vmdataType: VM.penalty
    });
    // //监督检查
    aAjax({
        url: "/api/gz/lg/custCheck/custCheckPublic.v",
        type: 'POST',
        dataType: "json",
        data: {
            type:"oths",
            custId          : getUrlSearch('custId') == undefined ? '' : getUrlSearch('custId')
        },
        vmdataType: VM.check
    });
    //检验检测
    //     aAjax({
    //         url: url,
    //         type: 'GET',
    //         dataType: "json",
    //         data: {
    //             regNum: "" || ""
    //         },
    //         vmdataType: VM.examination
    //     });
    // //司法协助
    aAjax({
        url: "/api/gz/lg/judicial/query.v",
        type: 'POST',
        dataType: "json",
        data: {
            regNum: getUrlSearch('regNum') == undefined ? '' : getUrlSearch('regNum')
        },
        vmdataType: VM.judicial
    });
    //企业年报
    aAjax({
        url: "/api/gz/lg/annualList.v",
        type: 'POST',
        dataType: "json",
        data: {
            regNum          : getUrlSearch('regNum') == undefined ? '' : getUrlSearch('regNum')
        },
        vmdataType: VM.annual
    });

    //企业年报
    aAjax({
        url: "/api/gz/lg/permission/permitpublic.v",
        type: 'POST',
        dataType: "json",
        data: {
            regNum          : getUrlSearch('regNum') == undefined ? '' : getUrlSearch('regNum')
        },
        vmdataType: VM.approval
    });

    //异常名录
    aAjax({
        url: "/api/gz/lg/exceptionDir/query",
        type: 'POST',
        dataType: "json",
        data: {
            regNum          : getUrlSearch('regNum') == undefined ? '' : getUrlSearch('regNum'),
            type:'oths'
        },
        vmdataType: VM.exceptionDir
    });

}();